Votre recherche :

tuto signature

kikims93s
Re: [Hack] : Outils signature Geohot Disponible !!!
Kev1511 Wrote:
kikims93s Wrote:
Kev1511 Wrote:Regardez mon tuto Tout y est expliquer et je pense que c'est le bon fichier de GeoHot =) j'ai tout traduit et si vous voulez la preuve il y a la version originale sur le site en bas


je te remerci je l ai lu mais tu na pas expliquer comment utiliser le programmme pour signer les hombrew ..... ;)


Mais l'adresse pour les Pkg non signé ne va pas donc il faut trouver par vous meme la je met juste le tuto pour installer le 3.55 jb sans plus

Ok merci pour ma part sa je savais ;) Mais sa va en aider plus d'un !!! ;D
Voir le sujet
Sandra_123
Re: [Hack] : Outils signature Geohot Disponible !!!
kikims93s Wrote:
Kev1511 Wrote:Regardez mon tuto Tout y est expliquer et je pense que c'est le bon fichier de GeoHot =) j'ai tout traduit et si vous voulez la preuve il y a la version originale sur le site en bas


je te remerci je l ai lu mais tu na pas expliquer comment utiliser le programmme pour signer les hombrew ..... ;)


Mais l'adresse pour les Pkg non signé ne va pas donc il faut trouver par vous meme la je met juste le tuto pour installer le 3.55 jb sans plus
Voir le sujet
kikims93s
Re: [Hack] : Outils signature Geohot Disponible !!!
Kev1511 Wrote:Regardez mon tuto Tout y est expliquer et je pense que c'est le bon fichier de GeoHot =) j'ai tout traduit et si vous voulez la preuve il y a la version originale sur le site en bas


je te remerci je l ai lu mais tu na pas expliquer comment utiliser le programmme pour signer les hombrew ..... ;) ou attend c'est la fin du tuto ??? je me trompe peut etre ^^"
Voir le sujet
Sandra_123
Re: [Hack] : Outils signature Geohot Disponible !!!
Regardez mon tuto Tout y est expliquer et je pense que c'est le bon fichier de GeoHot =) j'ai tout traduit et si vous voulez la preuve il y a la version originale sur le site en bas
Voir le sujet
Avatar de l’utilisateur
Tom Vivares
Re: [Hack] : Outils signature Geohot Disponible !!!
je vien de voir sa je vais testé, mais si quelqun avez un petit tuto quand meme..je suis sur un site espagnol ou il explique , avoir tout pret cui le logiciel c'est bien, savoir le faire est mieux^^merci de ton info
Voir le sujet
Avatar de l’utilisateur
MAtt22
[NEWS] USBloader_GX v2.2 rev1100 Final
Image


Mon Loader_GX favoris passe enfin le grand saut !!

GX passe en version v2.2 Rev1100 Final Stable

New:
- Added game categories and filter games list by categories (Can be imported
from WiiTDB).
- Wiinertag support.
- Supporting arguments from meta.xml on boot (--ios=xxx and --usbport=x)
(Requires Homebrew Channel 1.0.7+ or
UNEO Forwarder v3.0).
- New ehci modules by Rodries with better drive compatibility.
- Added two new video modes to force progressive video mode, 'FORCE PAL480p' and
'FORCE NTSC480p'.
- Added Sneek Video Patch mode.
- Added new 'Inherit' setting for game settings named "Use global". If that
option is set then the main loader
setting is used.
- Full d2x cIOS support with it's new features (Block IOS Reload, Return To,
Sector Sizes > 512).
- Support for sector sizes > 512B with FAT32/NTFS (Requires d2x v6+)
- Real support for simultanious use of both USB ports without switching the 2nd
drive temporary off. (Requires
Hermes cIOS or Rodries MOD of the Hermes cIOS (recommended))
- Added two new settings menus
- Added saving of game browser position when returning to USB Loader GX

Changes:
- Improved several GUI controls/navigations
- Changed settings menu layout and sorted the items to their correct place (HDD
menu, features menu)
- Set games settings to use the global setting by default, set to "use global"
to use the main loader settings.
- Use TinyXML instead of MXML (better XML support)
- Updated to new libs (libogc, libfat, libext2fs, libntfs)

Fix:
- "Return to" option now work for all games, even problematic games like Prince
of Persia. (Requires d2x v4+)
- Xflip setting fixed.
- Fix the parental lock of Individual game settings (Thanks to NJ7)
- Fix Theme downloader
- Fixed reset of the loader when loading game with IOS reload and disabled
WiiTDB titles
- Fixed timeout timer on startup to count correctly.
- Fixed reversed disc image download when Custom/Original option is selected
- Fixed reload of game list after a game rename
- Fixed horizontal text scrolling
- Fixed booting games by arguments (headless id feature)
- Fixed We Dare game boot (thx oggzee)



R1099 Change Log:
*Added IOS225 from Rodries cIOS Installer MOD to Hermes IOS types

New Forwarder V3.0 Changes:
*added support for ext partitions
*added support for arguments from xml
*clean up of source


RTU USBLoader_GX v2.2 Rev1100


Image


Sources: http://code.google.com/p/usbloader-gui/


Pour toute information complémentaire voir mon tuto dans ma signature
Voir le sujet
sTaLk R
Re: comment passer a l'ios 4 sans enlever le jailbreak ???
j'ai regardé sur ta signature "l'après jailbreak" et concernant l'ECID et je pense que j'ai du le sauvegardé au moment ou j'ai jailbreaké mon Iphone car apparemment pour le faire via cydia il faut cliquer sur "Make my life easier" sur la page d'acceuil et moi je l'ai pas cette phrase et en plus de ca j'ai écris en haut de la page en vert "SHSH : iOS 3.1.3, 4.0, 4.0.1, 4.0.2, 4.1" par contre par rapport a ce que j'ai lu sur le tuto de ta signature il devrais y avoir écris "this device has SHSH : iOS..." or moi il me manque le "this device has" en début de phrase donc cela veut dire quoi ?

dans mon pc j'ai un petit fichier (68ko) avec pour nom ECID iphone.shsh donc peut être que c'est ca ?

en te donnant le numéro de mon ECID tu pourrais pas savoir s'il a été enregistré et si c'est le cas comment je peut savoir c'est quoi mon ECID?

désolé de tout ces questions mais j'y connais pas grand chose
Voir le sujet
stev94
Re: TUTO - Re-signer vos sauvegardes avec Modio
Dites voir ,si la re-signature de sauvegardes est possible , est-ce que la re-signature d'un DLC est possible ? ( puisque qu'on y a acces avec Modio )
Voir le sujet
Avatar de l’utilisateur
azertyxpp
Re: MAJ - Custom Firmware KaKaRoTo : le premier Custom Firmware
kikims93s Wrote:
tba77 Wrote:Sony va en pleurer je ne suis pas si sûr que ça, ça pourrait booster la vente des consoles, les éditeurs tiers et éditeurs de jeux avec les backup vont plus pleurer que Sony je pense. Il suffit de prendre l'exemple de la PS2 qui a été hackée dès sa sortie, le hack n'a jamais ralenti la vente des consoles PS2 je dirais même au contraire.



Ta raison !! sa ete la reine des consoles pendant 5 ans, je pense ;D

Sinon metter nous au courant quand quelque' un trouvera le moyen de pouvoir tt signer sois même ;)

Y a moyen:
azertyxpp Wrote:
legendkil Wrote:azertyxpp j'ai installé le truc et j'ai toujours tout ça moi ^^ par contre il est dis quelques pages avant qu'on peux faire marcher les homebrews non signés en les "signant" avec les logiciels comme ps3tool, serai t il possible de nous sortir un tuto sur ça ?

A ba comme le dit mon collègue du dessus cela a été corrigé avec la version 1.2 de se CFW mais vous été bien sur que maintenant toutes ces options sont bien présente ? Non PS3Tool c'est pour signer les .pkg des mises à jours (PUP) qui sont différents des .pkg des homebrew, pour signer un .pkg il faut des bases en programmation et cela n'est pour le moment pas possible au commun des mortels look le binse legendkil ^^":
Code: Select All Code
// SCEkrit.c (v1.0): Compute Sony's Private Keys
// Based on Sven's sceverify.c
// -------------------------------------------------------------
// Compile by copying to fail0verflow's ps3tools and add
// SCEkrit.c to TOOLS in the Makefile.
// Depends on libgmp; add -lgmp to LDFLAGS
// - Aaron Lindsay / @AerialX
// And thanks gbcft!

// Copyright 2010       Sven Peter <svenpeter@gmail.com>
// Licensed under the terms of the GNU GPL, version 2
// http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt

#include "tools.h"
#include "types.h"

#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <stdlib.h>
#include <gmp.h>

static int keyid = -1;

static u8 *ptr1 = NULL;
static u8 *ptr2 = NULL;

static u16 type;
typedef struct {
   u16 flags;
   u32 meta_offset;
   u64 info_offset;
   u32 app_type;
   u64 filesize;
   u64 header_len;
} fileinfo;

static fileinfo info1;
static fileinfo info2;

static struct keylist *klist = NULL;

static struct keylist *self_load_keys(fileinfo* info)
{
   enum sce_key id;

   switch (info->app_type) {
      case 1:
         id = KEY_LV0;
         break;
       case 2:
         id = KEY_LV1;
         break;
      case 3:
         id = KEY_LV2;
         break;
      case 4:   
         id = KEY_APP;
         break;
      case 5:
         id = KEY_ISO;
         break;
      case 6:
         id = KEY_LDR;
         break;
      default:
         fail("invalid type: %08x", info->app_type);   
   }

   return keys_get(id);
}

static void read_self_header(u8* ptr, fileinfo* info)
{
   info->flags    =    be16(ptr + 0x08);
   info->meta_offset = be32(ptr + 0x0c);
   info->header_len =  be64(ptr + 0x10);
   info->filesize =    be64(ptr + 0x18);
   info->info_offset = be64(ptr + 0x28);

   info->app_type =    be32(ptr + info->info_offset + 0x0c);

   klist = self_load_keys(info);
}

static void read_pkg_header(u8* ptr, fileinfo* info)
{
   info->flags    =    be16(ptr + 0x08);
   info->meta_offset = be32(ptr + 0x0c);
   info->header_len =  be64(ptr + 0x10);
   info->filesize =    be64(ptr + 0x18);

   klist = keys_get(KEY_PKG);
}

static void decrypt(u8* ptr)
{
   if (keyid < 0)
      keyid = sce_decrypt_header(ptr, klist);
   else if (keyid != sce_decrypt_header(ptr, klist))
      fail("Both files must have the same key id");

   if (keyid < 0)
      fail("sce_decrypt_header failed");

   if (sce_decrypt_data(ptr) < 0)
      fail("sce_decrypt_data failed");

   if (klist->keys[keyid].pub_avail < 0)
      fail("no public key available");

   if (ecdsa_set_curve(klist->keys[keyid].ctype) < 0)
      fail("ecdsa_set_curve failed");

   ecdsa_set_pub(klist->keys[keyid].pub);
}

static void verify_signature(u8* ptr, fileinfo* info, u8* hash, u8** s, u8** r)
{
   u64 sig_len;

   sig_len = be64(ptr + info->meta_offset + 0x60);
   *r = ptr + sig_len;
   *s = *r + 21;

   sha1(ptr, sig_len, hash);

   printf("Signature\n");
   if (ecdsa_verify(hash, *r, *s))
      printf("  Status: OK\n");
   else
      printf("  Status: FAIL\n");
}

static void load_num(mpz_t n, u8* un)
{
   char buffer[0x100];
   char* ptr = buffer;
   int i;
   for (i = 0; i < 21; i++) {
      sprintf(ptr, "%02x", un[i]);
      ptr += 2;
   }
   mpz_set_str(n, buffer, 16);
}

static char* calculate_private_key(u8* us1, u8* us2, u8* uz1, u8* uz2, u8* un, u8* ur)
{
   mpz_t s1, s2, z1, z2, n, r, k, dA;
   mpz_inits(s1, s2, z1, z2, n, r, k, dA, NULL);
   load_num(s1, us1); load_num(s2, us2); load_num(z1, uz1); load_num(z2, uz2); load_num(n, un); load_num(r, ur);

   mpz_sub(z2, z1, z2);
   mpz_sub(s2, s1, s2);
   mpz_invert(s2, s2, n);
   mpz_mul(k, z2, s2);
   mpz_mod(k, k, n);

   mpz_mul(s2, s1, k);
   mpz_sub(s2, s2, z1);
   mpz_invert(r, r, n);
   mpz_mul(dA, s2, r);
   mpz_mod(dA, dA, n);

//   printf("k: %s\n", mpz_get_str(NULL, 16, k));
   return mpz_get_str(NULL, 16, dA);
}

int main(int argc, char *argv[])
{
   if (argc != 3)
      fail("usage: scesekrit filename1 filename2");

   ptr1 = mmap_file(argv[1]);
   ptr2 = mmap_file(argv[2]);

   type = be16(ptr1 + 0x0a);
   if (type != be16(ptr2 + 0x0a))
      fail("Files must be the same type");
   
   if (type == 1) {
      read_self_header(ptr1, &info1);
   } else if(type == 3) {
      read_pkg_header(ptr1, &info1);
   } else
      fail("Unknown type: %d", type);

   if ((info1.flags) & 0x8000)
      fail("devkit file; nothing to verify");

   if (klist == NULL)
      fail("no key found");

   decrypt(ptr1);
   
   if (type == 1) {
      read_self_header(ptr2, &info2);
   } else if(type == 3) {
      read_pkg_header(ptr2, &info2);
   } else
      fail("Unknown type: %d", type);

   if ((info2.flags) & 0x8000)
      fail("devkit file; nothing to verify");

   if (klist == NULL)
      fail("no key found");

   decrypt(ptr2);

   u8* s1;
   u8* s2;
   u8 z1[21];
   u8 z2[21];
   u8* r1;
   u8* r2;
   u8 ec[21];
   u8 n[21];
   z1[0] = 0;
   z2[0] = 0;
   
   ecdsa_get_params(klist->keys[keyid].ctype, ec, ec, ec, n, ec, ec);

   printf("%s ", argv[1]);
   verify_signature(ptr1, &info1, z1 + 1, &s1, &r1);
   printf("%s ", argv[2]);
   verify_signature(ptr2, &info2, z2 + 1, &s2, &r2);

   if (memcmp(r1, r2, 21))
      fail("Both files must share the same r signature value.");

   const char* dA = calculate_private_key(s1, s2, z1, z2, n, r1);

   int len = strlen(dA);
   int i;
   printf("Private Key: ");
   for (i = len / 2; i < 21; i++)
      printf("00");
   printf("%s\n", dA);

   return 0;
}

Donc pour l'instant il n'y a même pas de logiciel pour ceci c'est juste cette feuille de route (dira t'on) pour programmer la signature via lunix.

Après il y aurait apparemment un logiciel pour signer dans le kit de fail0verflow mais pas sur du tout car les outils de fail0verflow sont uniquement accès pour modifier des PUP et notamment compiler de PKG pour les PUP qui sont différents des PKG que nous avons l'habitude d'utiliser (MAJ des jeux, homebrew, jeux PSN...).
Voir le sujet
Avatar de l’utilisateur
azertyxpp
Re: MAJ - Custom Firmware KakaRoTo : le premier Custom Firmware
letiati Wrote:Pour le moment sa ne sert a rien de l'installer? vuque sa ne lance pas d'homebrew
donc je peu metre ma ps3 en 3.55 maintenant??

Sisi avec un manager de backup signé comme dit dans mon précédent post reli le mieux ^^", maintenant il faut le trouver sur net, si c'est pas encore dispo cela ne serait tarder car cela irai de paire avec se CFW. Mais tu perd beaucoup de chose aussi (li mon précédent post) à toi de voir si cela en vaut vraiment la chandelle pour toi.
legendkil Wrote:azertyxpp j'ai installé le truc et j'ai toujours tout ça moi ^^ par contre il est dis quelques pages avant qu'on peux faire marcher les homebrews non signés en les "signant" avec les logiciels comme ps3tool, serai t il possible de nous sortir un tuto sur ça ?

A ba comme le dit mon collègue du dessus cela a été corrigé avec la version 1.2 de se CFW mais vous été bien sur que maintenant toutes ces options sont bien présente ? Non PS3Tool c'est pour signer les .pkg des mises à jours (PUP) qui sont différents des .pkg des homebrew, pour signer un .pkg il faut des bases en programmation et cela n'est pour le moment pas possible au commun des mortels look le binse legendkil ^^":
Code: Select All Code
// SCEkrit.c (v1.0): Compute Sony's Private Keys
// Based on Sven's sceverify.c
// -------------------------------------------------------------
// Compile by copying to fail0verflow's ps3tools and add
// SCEkrit.c to TOOLS in the Makefile.
// Depends on libgmp; add -lgmp to LDFLAGS
// - Aaron Lindsay / @AerialX
// And thanks gbcft!

// Copyright 2010       Sven Peter <svenpeter@gmail.com>
// Licensed under the terms of the GNU GPL, version 2
// http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt

#include "tools.h"
#include "types.h"

#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <stdlib.h>
#include <gmp.h>

static int keyid = -1;

static u8 *ptr1 = NULL;
static u8 *ptr2 = NULL;

static u16 type;
typedef struct {
   u16 flags;
   u32 meta_offset;
   u64 info_offset;
   u32 app_type;
   u64 filesize;
   u64 header_len;
} fileinfo;

static fileinfo info1;
static fileinfo info2;

static struct keylist *klist = NULL;

static struct keylist *self_load_keys(fileinfo* info)
{
   enum sce_key id;

   switch (info->app_type) {
      case 1:
         id = KEY_LV0;
         break;
       case 2:
         id = KEY_LV1;
         break;
      case 3:
         id = KEY_LV2;
         break;
      case 4:   
         id = KEY_APP;
         break;
      case 5:
         id = KEY_ISO;
         break;
      case 6:
         id = KEY_LDR;
         break;
      default:
         fail("invalid type: %08x", info->app_type);   
   }

   return keys_get(id);
}

static void read_self_header(u8* ptr, fileinfo* info)
{
   info->flags    =    be16(ptr + 0x08);
   info->meta_offset = be32(ptr + 0x0c);
   info->header_len =  be64(ptr + 0x10);
   info->filesize =    be64(ptr + 0x18);
   info->info_offset = be64(ptr + 0x28);

   info->app_type =    be32(ptr + info->info_offset + 0x0c);

   klist = self_load_keys(info);
}

static void read_pkg_header(u8* ptr, fileinfo* info)
{
   info->flags    =    be16(ptr + 0x08);
   info->meta_offset = be32(ptr + 0x0c);
   info->header_len =  be64(ptr + 0x10);
   info->filesize =    be64(ptr + 0x18);

   klist = keys_get(KEY_PKG);
}

static void decrypt(u8* ptr)
{
   if (keyid < 0)
      keyid = sce_decrypt_header(ptr, klist);
   else if (keyid != sce_decrypt_header(ptr, klist))
      fail("Both files must have the same key id");

   if (keyid < 0)
      fail("sce_decrypt_header failed");

   if (sce_decrypt_data(ptr) < 0)
      fail("sce_decrypt_data failed");

   if (klist->keys[keyid].pub_avail < 0)
      fail("no public key available");

   if (ecdsa_set_curve(klist->keys[keyid].ctype) < 0)
      fail("ecdsa_set_curve failed");

   ecdsa_set_pub(klist->keys[keyid].pub);
}

static void verify_signature(u8* ptr, fileinfo* info, u8* hash, u8** s, u8** r)
{
   u64 sig_len;

   sig_len = be64(ptr + info->meta_offset + 0x60);
   *r = ptr + sig_len;
   *s = *r + 21;

   sha1(ptr, sig_len, hash);

   printf("Signature\n");
   if (ecdsa_verify(hash, *r, *s))
      printf("  Status: OK\n");
   else
      printf("  Status: FAIL\n");
}

static void load_num(mpz_t n, u8* un)
{
   char buffer[0x100];
   char* ptr = buffer;
   int i;
   for (i = 0; i < 21; i++) {
      sprintf(ptr, "%02x", un[i]);
      ptr += 2;
   }
   mpz_set_str(n, buffer, 16);
}

static char* calculate_private_key(u8* us1, u8* us2, u8* uz1, u8* uz2, u8* un, u8* ur)
{
   mpz_t s1, s2, z1, z2, n, r, k, dA;
   mpz_inits(s1, s2, z1, z2, n, r, k, dA, NULL);
   load_num(s1, us1); load_num(s2, us2); load_num(z1, uz1); load_num(z2, uz2); load_num(n, un); load_num(r, ur);

   mpz_sub(z2, z1, z2);
   mpz_sub(s2, s1, s2);
   mpz_invert(s2, s2, n);
   mpz_mul(k, z2, s2);
   mpz_mod(k, k, n);

   mpz_mul(s2, s1, k);
   mpz_sub(s2, s2, z1);
   mpz_invert(r, r, n);
   mpz_mul(dA, s2, r);
   mpz_mod(dA, dA, n);

//   printf("k: %s\n", mpz_get_str(NULL, 16, k));
   return mpz_get_str(NULL, 16, dA);
}

int main(int argc, char *argv[])
{
   if (argc != 3)
      fail("usage: scesekrit filename1 filename2");

   ptr1 = mmap_file(argv[1]);
   ptr2 = mmap_file(argv[2]);

   type = be16(ptr1 + 0x0a);
   if (type != be16(ptr2 + 0x0a))
      fail("Files must be the same type");
   
   if (type == 1) {
      read_self_header(ptr1, &info1);
   } else if(type == 3) {
      read_pkg_header(ptr1, &info1);
   } else
      fail("Unknown type: %d", type);

   if ((info1.flags) & 0x8000)
      fail("devkit file; nothing to verify");

   if (klist == NULL)
      fail("no key found");

   decrypt(ptr1);
   
   if (type == 1) {
      read_self_header(ptr2, &info2);
   } else if(type == 3) {
      read_pkg_header(ptr2, &info2);
   } else
      fail("Unknown type: %d", type);

   if ((info2.flags) & 0x8000)
      fail("devkit file; nothing to verify");

   if (klist == NULL)
      fail("no key found");

   decrypt(ptr2);

   u8* s1;
   u8* s2;
   u8 z1[21];
   u8 z2[21];
   u8* r1;
   u8* r2;
   u8 ec[21];
   u8 n[21];
   z1[0] = 0;
   z2[0] = 0;
   
   ecdsa_get_params(klist->keys[keyid].ctype, ec, ec, ec, n, ec, ec);

   printf("%s ", argv[1]);
   verify_signature(ptr1, &info1, z1 + 1, &s1, &r1);
   printf("%s ", argv[2]);
   verify_signature(ptr2, &info2, z2 + 1, &s2, &r2);

   if (memcmp(r1, r2, 21))
      fail("Both files must share the same r signature value.");

   const char* dA = calculate_private_key(s1, s2, z1, z2, n, r1);

   int len = strlen(dA);
   int i;
   printf("Private Key: ");
   for (i = len / 2; i < 21; i++)
      printf("00");
   printf("%s\n", dA);

   return 0;
}

Donc pour l'instant il n'y a même pas de logiciel pour ceci c'est juste cette feuille de route (dira t'on) pour programmer la signature via lunix.

A oui effectivement remi06 j'ai pas pensé à ces foutus syscall, donc oui il faudrai aussi une modif sur le firmware au niveau des syscall, une version 1.3 peut être.
;)
Voir le sujet